// 手机号码
const ydtel_reg = /^1(3[4-9]|4[7]|5[0-27-9]|7[08]|8[2-478])\d{8}$/; //移动号码
const lttel_reg = /^1(3[0-2]|4[5]|5[56]|709|7[1]|7[6]|8[56])\d{8}$/; //联通号码
const dxtel_reg = /^1(3[34]|53|77|700|8[019])\d{8}$/; //电信号码

// 年月日
const yearsMonthDay = /^((19[2-9]\d{1})|(20((0[0-9])|(1[0-8]))))((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|30|31)$/; //YYMMDD
const monthDay = /^((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|30|31)$/; //MMDD

/**
 * 手机号校验 移动、联通、电信
 * @param {Number} pnum 手机号码
 */
const phoneNumberReg = ((pnum) => {
   if (ydtel_reg.test(pnum) || lttel_reg.test(pnum) || dxtel_reg.test(pnum)) {
      return true;
   }
   return false;
})

/**
 * 日期校验
 * type：YYMMDD/MMDD
 * 
 * @param {Number} date 日期
 * @param {String} YYMMDD 类型
 */
const datesReg = ((date, dtype) => {
   if (dtype == 'YYMMDD') {
      if (yearsMonthDay.test(date)) {
         return true;
      } else {
         return false;
      }
   }
   else if (dtype == 'MMDD'){
      if (monthDay.test(date)) {
         return true;
      } else {
         return false;
      }
   }
   else{
      return 'dtype error';
   }

})


module.exports = {
   phoneNumberReg,
   datesReg
}